from django.urls import path
# from polls.views import index, detail
from polls import views
from polls import view_class

app_name = 'polls'
urlpatterns = [
    path('', views.index, name='polls-index'),
    path('<int:question_id>/', views.detail, name='polls-detail'),
    path('<int:question_id>/results/', views.results, name='polls-result'),
    path('<int:question_id>/vote/', views.vote, name='polls-vote'),
    # v2
    path('v2/', view_class.IndexView.as_view(), name='v2-polls-index'),
    # Generic detail view DetailView must be called with either an object pk or a slug in the URLconf.
    # 使用 Django generic.DetailView 时，id参数必须是 pk 或者 slug （这里不涉及slug知识点，后续讲解)
    path('v2/<int:pk>/', view_class.DetailView.as_view(), name='v2-polls-detail'),
    path('v2/<int:pk>/results/', view_class.ResultView.as_view(), name='v2-polls-result'),
    # 为了generic下的封装试图保持一致，这里也使用pk（这里使用任何参数都没有问题，因为最终都是通过 kwargs 获取的）
    path('v2/<int:pk>/vote/', view_class.VoteView.as_view(), name='v2-polls-vote'),
]
